В то время как это верно, что C++ был разработан для поддержания значительной степени совместимости с C и подмножеством того, что Вы изучаете в C++, будет относиться к C, мышление полностью отличается. Программирование C++ с Повышением или STL является совсем другим опытом, чем программирование в C.
было понятие искусства, названного с помощью C++ в качестве лучшего C. Это означало использовать некоторые функции языка C++ и инструменты для создания C программированием легче (например, объявляя индексную переменную для цикла в для оператора). Но теперь, современная разработка C++ кажется очень отличающейся от C кроме большого количества синтаксиса, и в тех случаях наследие C часто, кажется, нагрузка, а не преимущество.
Вместо того, чтобы добавлять дополнительные хуки в вашу систему, вам следует проверить, можно ли удалить некоторые из них, чтобы отключить автозаполнение.
Если вы видите исходный код noweb-mode , около строки 211 вы найдете этот фрагмент:
(add-hook 'noweb-select-doc-mode-hook 'noweb-auto-fill-doc-mode)
(add-hook 'noweb-select-code-mode-hook 'noweb-auto-fill-code-mode)
Чтобы отключить автоматическое заполнение, поместите следующие одну или две строки в ваши dotemacs (в зависимости от того, хотите ли вы отключить автоматическое заполнение как в коде, так и в документации).
(remove-hook 'noweb-select-doc-mode-hook 'noweb-auto-fill-doc-mode)
(remove-hook 'noweb-select-code-mode-hook 'noweb-auto-fill-code-mode)
Хорошо, я разработал хак, который помогает:
(setq auto-fill-mode -1)
(setq-default fill-column 99999)
(setq fill-column 99999)
Если я могу ' t выключить режим автозаполнения, по крайней мере, я могу сделать его безвредным, установив для него заполнение только столбца 99999. Я буду раздражен, если наберу абзац, содержащий более 99999 символов, но если это произойдет, у меня будет больше повод для беспокойства ...