Oh you're talking about the account creation through a join code. Yes, that has to be enabled at account level since you're using that to create Canvas accounts for these students.
Join codes are just another method of joining a course that can be enabled. Future students can be enrolled through the join code/enrollment link, by inviting them from the People page, or through SIS importing or API calls.
These actions are NOT mutually exclusive. By enabling one you're not disabling any other way someone could enroll a student into a course (given that they have the correct permissions to do so). The join code just makes it easier for students to enroll themselves into a course, without having to ask the teacher or put in a support ticket, etc.