目录:
cmake 复习一下
文件结构:(两个实验)
文件内容:
Hello.h
#ifndef CMAKER_LEARNING_HELLO_H #define CMAKER_LEARNING_HELLO_H class Hello{ public: void print(); }; #endif //CMAKER_LEARNING_HELLO_H
Hello.cpp
#ifndef CMAKER_LEARNING_HELLO_H #define CMAKER_LEARNING_HELLO_H class Hello{ public: void print(); }; #endif //CMAKER_LEARNING_HELLO_H
main.cpp
#include "../include/Hello.h" int main(int argc, char *argv[]) { Hello hi; hi.print(); return 0; }
CMakeLists.txt
cmake_minimum_required(VERSION 3.5) project(hello_headers) set( SOURCES src/Hello.cpp src/main.cpp ) add_executable(hello_headers ${SOURCES}) target_include_directories( hello_headers PRIVATE ${PROJECT_SOURCE_DIR}/include )
范例2:
目录:
文件:
Account.h
#ifndef CPP_REVIEW_ACCOUNT_H #define CPP_REVIEW_ACCOUNT_H #includeclass Account{ public: void setName(const std::string&); std::string getName() const; private: std::string name; }; #endif //CPP_REVIEW_ACCOUNT_H
AccountTest.cpp
#include#include "../include/Account.h" using namespace std; std::string Account::getName() const { return name; } void Account::setName(const string& accountName) { name = accountName; }
main.cpp
#include#include #include "../include/Account.h" using namespace std; int main() { Account myAccount; cout << "Initial account name is : " << myAccount.getName() << endl; cout << "nPlease enter the account name: "; string theName; getline(cin, theName); myAccount.setName(theName); cout << "Name in object myAccount is: " << myAccount.getName() << endl; }
CMakelists.txt
cmake_minimum_required(VERSION 3.5) project(cpp_review) set( SOURCES src/AccountTest.cpp src/main.cpp ) add_executable(run_account ${SOURCES}) target_include_directories( run_account PRIVATE ${PROJECT_SOURCE_DIR}/include )
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)