Các chương trình khác nhau trong cùng một dự án Xcode C ++


2

Tôi đang cố gắng sử dụng XCode làm môi trường đào tạo cho các chương trình C ++ đơn giản. Nếu tôi tạo một dự án mới, tôi có thể hoàn thành thành công mọi thứ (biên dịch, chạy) nhưng nếu tôi thêm một tệp nữa, nó không thể biên dịch thành một tệp riêng biệt. Điều đó có nghĩa là tôi cần phải có main2 () và main3 (), v.v. vì có 2 tệp có hai tệp main () trong cùng một thư mục dẫn đến lỗi.

Nói một cách đơn giản, tôi muốn viết mã cho 30 ví dụ C ++, mỗi ví dụ trong tệp .cpp của riêng nó và biên dịch mỗi một trong số chúng một cách riêng biệt và không phải là toàn bộ dự án (tất cả các tệp cùng nhau Nếu có hai hàm cùng tên, nó sẽ sụp đổ).


1
Bạn sẽ cần tạo mục tiêu riêng cho mỗi tệp. Dưới đây là thông tin thêm trên Trang Apple: developer.apple.com/l Library / mac / recipes / '
Mateusz Szlosek

Tôi không tin nó sẽ làm được vì tôi cần thiết lập một lược đồ mới cho mỗi tệp. Chúng ta đang nói về helloworld.cpp, factorial.cpp, v.v. - các chương trình hoàn toàn khác với một cuốn sách.
Radolino

Uh, bạn phải đợi một chút cho đến khi tôi nhận được nhiều ảnh chụp màn hình hơn. Bạn phải tạo các mục tiêu riêng biệt để có thể biên dịch các chương trình riêng biệt.
Mateusz Szlosek

Tôi không muốn biên dịch 30 chương trình mỗi lần tôi thực hiện thay đổi thư trong một trong số chúng. Trong trường hợp XCode hỗ trợ loại sử dụng này.
Radolino

Xem câu trả lời của tôi. Bạn sẽ chỉ biên dịch một tệp, chỉ cần thay đổi mục tiêu bạn muốn biên dịch.
Mateusz Szlosek

Câu trả lời:


7

Để biên dịch nhiều tệp riêng biệt (kết quả là các tệp nhị phân riêng biệt) Bạn cần tạo các mục tiêu riêng cho mỗi tệp.

Để thêm mục tiêu mới, vui lòng chọn: Tập tin - & gt; Mới - & gt; Mục tiêu.. , chọn ví dụ Công cụ dòng lệnh . Hãy chắc chắn rằng nó được thêm đúng vào dự án của bạn. Đây là ví dụ: enter image description here

Của tôi main.cpp được thêm vào mục tiêu multiple_targets như thế này: enter image description here

Của tôi main-kopia.cpp tập tin được thêm vào target2 như thế này: enter image description here

để chắc chắn kiểm tra các giai đoạn xây dựng cho mọi mục tiêu, đây là ví dụ về tôi target2 Giai đoạn xây dựng: enter image description here

Với điều này, tôi có thể biên dịch cả hai main.cppmain-kopia.cpp. Lưu ý rằng cả hai đều có main() Bên trong họ.


không linh hoạt nhiều, nhưng ít nhất là hoạt động.
Radolino
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.